//
//  ListManager.h
//  YoucApp
//
//  Created by Liam on 12-10-14.
//  Copyright 2012 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "SingletonDefine.h"
#import "LMListParam.h"
#import "YoucApi.h"

//typedef enum {
//	ListType_WebGame,
//	ListType_MobileGame,
//	ListType_PCGame
//} ListType;

#define LMListParamKey									@"LMListParamKey"					// LMListParam *
#define LMErrorKey										@"LMErrorKey"						// NSError *
#define LMRESULT										@"LMRESULT"                         // id

// LMListParam *param = [[noitfication userInfo] objectForKey:LMListParamKey]
// NSError *error = [[noitfication userInfo] objectForKey:LMErrorKey]
// id result = [[noitfication userInfo] objectForKey:LMRESULT]
#define LMGetAllListDidFinishedNotification				@"LMGetAllListDidFinishedNotification"
#define LMGetRecommendListDidFinishedNotification		@"LMGetRecommendListDidFinishedNotification"
#define LMGetAttentionListDidFinishedNotification		@"LMGetAttentionListDidFinishedNotification"
#define LMSearchGamesDidFinishedNotification			@"LMSearchGamesDidFinishedNotification"

#define LMGetServerListDidFinishedNotification          @"LMGetServerListDidFinishedNotification"

@interface ListManager : NSObject <YADelegateGame> {

}

OBJC_DEF_SINGLETON(ListManager);

- (void)getAllList:(LMListParam *)param forceLoad:(BOOL)forceLoad;
- (void)getRecommendList:(LMListParam *)param forceLoad:(BOOL)forceLoad;
- (void)getAttentionList:(LMAttentionListParam *)param forceLoad:(BOOL)forceLoad;
- (void)searchGames:(LMSearchGamesParam *)param;

- (void)getGameServerList:(LMServerListParam *)param forceLoad:(BOOL)forceLoad;

@end
